package com.tarena.lbs.common.utils;


import com.tarena.lbs.common.principle.UserPrinciple;

/**
 * 身份验证上下文工具类
 * 用于在当前线程中存储和获取用户认证信息
 */
public class AuthenticationContextUtils {
	
	// 静态变量，存储当前线程，保存当前用户认证信息
	private static ThreadLocal<UserPrinciple> Register = new ThreadLocal<>();
	
	// 将用户认证信息存入当前线程
	public static void save(UserPrinciple userPrinciple) {
		Register.set(userPrinciple);
	}
	
	// 从当前线程获取用户认证信息
	public static UserPrinciple get() {
		return Register.get();
	}
	
	// 清除当前线程的用户认证信息
	public static void clear() {
		Register.remove();
	}
	
}
